Field of the Invention
The present disclosure relates to sharing presence information in telecommunication networks. In particular, but not exclusively, the present disclosure relates to measures, including methods, systems and computer program products, for providing presence information on behalf of devices which do not provide their own presence information.
Description of the Related Technology
With the advent of intelligent telecommunication endpoints such as VoIP desk phones, smartphones and VoIP clients on computers it has become commonplace to provide presence information for contacts using such endpoints, allowing users to easily see whether one of their contacts is available for a telephone call, for example. This presence information is easy to produce and consume using existing technology, such as eXtensible Messaging and Presence Protocol (XMPP hereafter) which provides presence and messaging services for endpoints mediated by a server. Such endpoints are therefore clients of the presence server.
However, it is challenging to obtain presence information for endpoints that do not support presence protocols such as XMPP. Such endpoints are referred to in this document as “dumb”. In particular, it may be desirable to obtain presence information for legacy telephone end-points, which are not able to generate their own presence information. Furthermore, it may be desirable to obtain presence information from end points configured to be unable to participate in communication with a presence server for policy or security reasons. Such end points may well be “intelligent” in principle, having the capacity to communicate via XMPP, but their disability to do so means that they can also be referred to as “dumb” for our purposes.
With reference now to FIG. 1, a prior art solution to this challenge is portrayed. Endpoint 2 is in communication with presence server 4. The user of endpoint 2 desires to see presence information for dumb endpoint 6, but presence server 4 is not able to provide this information as endpoint 6 is not in communication with it. Instead, endpoint 2 sends a SIP SUBSCRIBE message to the switch 8 that provides telecommunications services to endpoint 6. By using the SIP SUBSCRIBE method, endpoint 2 receives SIP NOTIFY messages when the state of endpoint 6 changes, for example when a call is answered, providing presence functionality.
There are a number of drawbacks with prior art approaches to this challenge. For example, they require that the endpoint be able to engage in SIP communication with the switch, which may require further complexity on the part of the endpoint and access to the switch which may not be possible for policy or security reasons. Secondly, it is often desired by users to see presence information for a large number of lines. If there are multiple users each subscribing to the switch for the presence information of multiple endpoints, then the number of subscriptions on the switch will rapidly increase to unsustainable levels.
It would be desirable to provide presence information for dumb endpoints in a way that scales well and allows a simple client implementation, which is difficult with prior art approaches to this problem.